package com.runen.infinitemovement.model.entity;



/**
 * Author: 廖端洪
 * E-mail: 178917169@qq.com
 * CreatedTime: 2018/1/9 13:26
 * <p>
 * Flag
 */
public class Flag {


    /**
     * 成功
     */
    public static final int RESULT_TRUE = 0x10;

    /**
     * 失败
     */
    public static final int RESULT_FALSE = 0x11;

    /**
     * 异常
     */
    public static final int RESULT_ERROR = 0x12;

    /**
     * hourly 最大数据
     */
    public static final int HOURLY_DATA_MAXNUM = 48;

    /**
     * minute 最大数据
     */
    public static final int MINUTE_DATA_MAXNUM = 120;

    /**
     * day 最大数据
     */
    public static final int DAILY_DATA_MAXNUM = 5;
    /**
     * 天气质量
     */
    public static String[] AIR_QUALITY = {"优", "良", "重度污染", "严重污染"};
    /**
     * 天气质量背景色
     */
//    public static int[] ATR_QUALITY_BG = {
//            R.drawable.background_25af4f_cr_dp2,
//            R.drawable.background_c7ad1e_cr_dp2,
//            R.drawable.background_c7691e_cr_dp2,
//            R.drawable.background_e33e0b_cr_dp2,
//
//    };
    public static double EARTH_RADIUS = 6371.0;//km 地球半径 平均值，千米

    /**
     * 生成彩云天气实例
     */
    public static abstract class CyWetherFlag {
        /**
         * 下载方式 -- 实时天气
         */
        public static final String DOWNLOAD_REALTIME = "R";

        /**
         * 下载方式 -- 预告天气
         */
        public static final String DOWNLOAD_FORECAST = "F";

        /**
         * 下载方式 -- 全部
         */
        public static final String DOWNLOAD_ALL = "A";

        /**
         * 数据返回情况 true  -- 下载成功
         * flase -- 下载失败
         */
        public static final String DOWNLOAD_RESULT = "DOWNLOAD_RESULT";

    }

    /**
     * 实时天气
     */
    public static abstract class RealTimeFlag {

        /**
         * 当前温度
         * ----值类型为 double 10.0
         */
        public static final String TEMPERATURE = "TEMPERATURE";

        /**
         * 天气概况
         * ----值类型为 String CLEAR_DAY
         */
        public static final String SKYCON = "SKYCON";

        /**
         * 天气图标
         * ---- 值为Drwable
         */
        public static final String SKYCON_ICON = "SKYCON_ICON";

        /**
         * PM2.5
         * ----值类型为 int 77
         */
        public static final String PM2_5 = "PM2_5";

        /**
         * AQI
         * ---- 值类型为 int
         */
        public static final String AQI = "AQI";

        /**
         * 空气质量
         * ---- 值类型为 int 0-5
         */
        public static final String QUALITY_NUM = "QUALITY_NUM";

        /**
         * 空气质量
         * ---- 值类型为 String
         */
        public static final String QUALITY_STR = "QUALITY_STR";

        /**
         * 空气质量  背景
         * ---- 值类型为 int
         */
        public static final String QUALITY_BG = "QUALITY_BG";

        /**
         * 云量
         * ----值类型为 double 0.0
         */
        public static final String CLOUDRATE = "CLOUDRATE";

        /**
         * 湿度
         * ----值类型为 double 0.0
         */
        public static final String HUMIDITY = "HUMIDITY";

        /**
         * 降水强度
         * ----值类型为 double 0.0
         */
        public static final String PRECIPITATION = "PRECIPITATION";

        /**
         * 最近降水区域距离
         * ----值类型为double 0.0
         */
        public static final String PRECIPITATION_NEAR_D = "PRECIPITATION_NEAR_D";

        /**
         * 最近降水区域角度
         * ----值类型为double 0.0
         */
        public static final String PRECIPITATION_NEAR_I = "PRECIPITATION_NEAR_I";

        /**
         * 风向
         * ----值类型为double 90.0  单位是度。正北方向为0度，顺时针增加到360度。
         */
        public static final String WINDINF_D = "WINDINF_D";

        /**
         * 风速
         * ----值类型为double 0.0  公里每小时
         */
        public static final String WINDINF_S = "WINDINF_S";
    }

    /**
     * 天气预报
     */
    public static abstract class ForecastFlag {

        public static final String HOUR = "HOUR";
        public static final String MINUTE = "MINUTE";
        public static final String DAILY = "DAILY";
        public static final String ALBER = "HOUR";

        /**
         * 获取详情  String
         */
        public static final String HORE_DES = "HORE_DES";
        /**
         * 小时级预报，涵盖从当前开始的未来 48 小时 --- PM2.5 ---的值,最多48
         * ----值类型为double
         */
        public static final String HOUR_PM2_5 = "HOUR_PM2_5";

        /**
         * 小时级预报，涵盖从当前开始的未来 48 小时  --- 天气概况 ---  的值
         * ----值类型为String
         */
        public static final String HOUR_SKYCON = "HOUR_SKYCON";

        /**
         * 小时级预报，涵盖从当前开始的未来 48 小时  --- 云量 ---  的值
         * ----值类型为double
         */
        public static final String HOUR_CLOUDTATE = "HOUR_CLOUDTATE";

        /**
         * 小时级预报，涵盖从当前开始的未来 48 小时  --- AQI ---  的值
         * ----值类型为double
         */
        public static final String HOUR_AQI = "HOUR_AQI";

        /**
         * 小时级预报，涵盖从当前开始的未来 48 小时  --- 湿度 ---  的值
         * ----值类型为double
         */
        public static final String HOUR_HUMIDITY = "HOUR_HUMIDITY";

        /**
         * 小时级预报，涵盖从当前开始的未来 48 小时  --- 降雨强度 ---  的值
         * ----值类型为double    0.05 ~ 0.9 小雨 0.9 ~ 2.87 中雨 >2.87大雨
         */
        public static final String HOUR_PRECIPITATION = "HOUR_PRECIPITATION";

        /**
         * 小时级预报，涵盖从当前开始的未来 48 小时  --- 温度 ---  的值
         * ----值类型为double
         */
        public static final String HOUR_TEMPERATURE = "HOUR_TEMPERATURE";

        /**
         * 小时级预报，涵盖从当前开始的未来 48 小时  --- 风向 ---  的值
         * ----值类型为double   单位是度。正北方向为0度，顺时针增加到360度。
         */
        public static final String HOUR_WIND_D = "HOUR_WIND_D";

        /**
         * 小时级预报，涵盖从当前开始的未来 48 小时  --- 风速 ---  的值
         * ----值类型为double
         */
        public static final String HOUR_WIND_S = "HOUR_WIND_S";

        /**
         * 小时级预报，涵盖从当前开始的未来 48 小时  --- 时间轴 ---  的值
         * ----值类型为String   YYYY-MM-DD HH:mm
         */
        public static final String HOUR_DATE = "HOUR_DATE";

        /**
         * 获取未来两小时预测结果总叙
         * ----值类型为String
         */
        public static final String MINUTE_DES = "MINUTE_DES";

        /**
         * 分钟级预报
         * 降水强度  未来一小时每分钟的降雨量，0.03-0.25是小雨，0.25-0.35是中雨, 0.35以上是大雨，根据不同地区情况可以有所调整。
         * ----值类型为double
         */
        public static final String MINUTE_PRECIPITATION = "MINUTE_PRECIPITATION";


        /**
         * 天级别的预报，给出最近 5 天的   ---每天冷风险指数--- 预报
         * ----值类型为 String   "1","2"
         */
        public static final String DAILY_COLDRISK_INDEX = "DAILY_COLDRISK_INDEX";

        /**
         * 天级别的预报，给出最近 5 天的   ---每天冷风险发生情况--- 预报
         * ----值类型为 String   "易发","极易发",....
         */
        public static final String DAILY_COLDRISK_DESC = "DAILY_COLDRISK_DESC";

        /**
         * 天级别的预报，给出最近 5 天的   ---每天最高温度--- 预报
         * ----值类型为 double
         */
        public static final String DAILY_TEMPERATURE_MAX = "DAILY_TEMPERATURE_MAX";

        /**
         * 天级别的预报，给出最近 5 天的   ---每天平均温度--- 预报
         * ----值类型为 double
         */
        public static final String DAILY_TEMPERATURE_AVG = "DAILY_TEMPERATURE_MVG";

        /**
         * 天级别的预报，给出最近 5 天的   ---每天最低温度--- 预报
         * ----值类型为 double
         */
        public static final String DAILY_TEMPERATURE_MIN = "DAILY_TEMPERATURE_MIM";

        /**
         * 天级别的预报，给出最近 5 天的   ---每天天气详情--- 预报
         * ----值类型为 String
         */
        public static final String DAILY_SKYCON = "DAILY_SKYCON";

        /**
         * 天级别的预报，给出最近 5 天的   ---每天最高云量--- 预报
         * ----值类型为 double
         */
        public static final String DAILY_CLOUDRATE_MAX = "DAILY_CLOUDRATE_MAX";

        /**
         * 天级别的预报，给出最近 5 天的   ---每天平均云量--- 预报
         * ----值类型为 double
         */
        public static final String DAILY_CLOUDRATE_AVG = "DAILY_CLOUDRATE_AVG";

        /**
         * 天级别的预报，给出最近 5 天的   ---每天最低云量--- 预报
         * ----值类型为 double
         */
        public static final String DAILY_CLOUDRATE_MIN = "DAILY_CLOUDRATE_MIN";

        /**
         * 天级别的预报，给出最近 5 天的   ---每天最高AQI--- 预报
         * ----值类型为 double
         */
        public static final String DAILY_AQI_MAX = "DAILY_AQI_MAX";

        /**
         * 天级别的预报，给出最近 5 天的   ---每天平均AQI--- 预报
         * ----值类型为 double
         */
        public static final String DAILY_AQI_AVG = "DAILY_AQI_AVG";

        /**
         * 天级别的预报，给出最近 5 天的   ---每天最低AQI--- 预报
         * ----值类型为 double
         */
        public static final String DAILY_AQI_MIN = "DAILY_AQI_MIN";

        /**
         * 天级别的预报，给出最近 5 天的   ---每天最高湿度--- 预报
         * ----值类型为 double
         */
        public static final String DAILY_HUMIDITY_MAX = "DAILY_HUMIDITY_MAX";

        /**
         * 天级别的预报，给出最近 5 天的   ---每天平均湿度--- 预报
         * ----值类型为 double
         */
        public static final String DAILY_HUMIDITY_AVG = "DAILY_HUMIDITY_AVG";

        /**
         * 天级别的预报，给出最近 5 天的   ---每天最低湿度--- 预报
         * ----值类型为 double
         */
        public static final String DAILY_HUMIDITY_MIN = "DAILY_HUMIDITY_MIN";

        /**
         * 天级别的预报，给出最近 5 天的   ---每天日落时间--- 预报
         * ----值类型为 String  18:00
         */
        public static final String DAILY_ASTRO_SUNSET = "DAILY_ASTRO_SUNSET";

        /**
         * 天级别的预报，给出最近 5 天的   ---每天日出时间--- 预报
         * ----值类型为 String  08:00
         */
        public static final String DAILY_ASTRO_SUNRISE = "DAILY_ASTRO_SUNRISE";

        /**
         * 天级别的预报，给出最近 5 天的   ---每天紫外线系数--- 预报
         * ----值类型为 String  "4"
         */
        public static final String DAILY_ULTRAVIOLET_INDEX = "DAILY_ULTRAVIOLET_INDEX";

        /**
         * 天级别的预报，给出最近 5 天的   ---每天紫外线描述--- 预报
         * ----值类型为 String  "强"
         */
        public static final String DAILY_ULTRAVIOLET_DESC = "DAILY_ULTRAVIOLET_DESC";

        /**
         * 天级别的预报，给出最近 5 天的   ---每天最高PM2.5的值--- 预报
         * ----值类型为 int
         */
        public static final String DAILY_PM2_5_MAX = "DAILY_PM2_5_MAX";

        /**
         * 天级别的预报，给出最近 5 天的   ---每天平均PM2.5的值--- 预报
         * ----值类型为 double
         */
        public static final String DAILY_PM2_5_AVG = "DAILY_PM2_5_AVG";

        /**
         * 天级别的预报，给出最近 5 天的   ---每天最低PM2.5的值--- 预报
         * ----值类型为 int
         */
        public static final String DAILY_PM2_5_MIN = "DAILY_PM2_5_MIN";

        /**
         * 天级别的预报，给出最近 5 天的   ---每天穿衣指数--- 预报
         * ----值类型为 String   "7"
         */
        public static final String DAILY_DRESS_INDEX = "DAILY_DRESS_INDEX";

        /**
         * 天级别的预报，给出最近 5 天的   ---每天穿衣指数提醒--- 预报
         * ----值类型为 String   "寒冷"
         */
        public static final String DAILY_DRESS_DESC = "DAILY_DRESS_DESC";

        /**
         * 天级别的预报，给出最近 5 天的   ---每天洗车指数--- 预报
         * ----值类型为 String   "2"
         */
        public static final String DAILY_CARWASH_INDEX = "DAILY_CARWASH_INDEX";

        /**
         * 天级别的预报，给出最近 5 天的   ---每天洗车推荐--- 预报
         * ----值类型为 String   "适宜"
         */
        public static final String DAILY_CARWASH_DESC = "DAILY_CARWASH_DESC";

        /**
         * 天级别的预报，给出最近 5 天的   ---每天最高降雨强度的值--- 预报
         * ----值类型为 double
         */
        public static final String DAILY_PRECIPITATION_MAX = "DAILY_PRECIPITATION_MAX";

        /**
         * 天级别的预报，给出最近 5 天的   ---每天平均降雨强度的值--- 预报
         * ----值类型为 double
         */
        public static final String DAILY_PRECIPITATION_AVG = "DAILY_PRECIPITATION_AVG";

        /**
         * 天级别的预报，给出最近 5 天的   ---每天最低降雨强度的值--- 预报
         * ----值类型为 double
         */
        public static final String DAILY_PRECIPITATION_MIN = "DAILY_PRECIPITATION_MIN";

        /**
         * 天级别的预报，给出最近 5 天的   ---每天最大风 风向--- 预报
         * ----值类型为 double
         */
        public static final String DAILY_WIND_MAX_D = "DAILY_WIND_MAX_D";

        /**
         * 天级别的预报，给出最近 5 天的   ---每天最大风 风速--- 预报
         * ----值类型为 double
         */
        public static final String DAILY_WIND_MAX_S = "DAILY_WIND_MAX_S";

        /**
         * 天级别的预报，给出最近 5 天的   ---每天平均风向--- 预报
         * ----值类型为 double
         */
        public static final String DAILY_WIND_AVG_D = "DAILY_WIND_AVG_D";

        /**
         * 天级别的预报，给出最近 5 天的   ---每天平均风速--- 预报
         * ----值类型为 double
         */
        public static final String DAILY_WIND_AVG_S = "DAILY_WIND_AVG_S";

        /**
         * 天级别的预报，给出最近 5 天的   ---每天最小风 风向--- 预报
         * ----值类型为 double
         */
        public static final String DAILY_WIND_MIN_D = "DAILY_WIND_MIN_D";

        /**
         * 天级别的预报，给出最近 5 天的   ---每天最小风 风速--- 预报
         * ----值类型为 double
         */
        public static final String DAILY_WIND_MIN_S = "DAILY_WIND_MIN_S";

        /**
         * 预警信息代码
         */
        public static final String ALERT_CODE = "ALERT_CODE";

        /**
         * 预警信息  预警数目
         * ---- 值类型为int
         */
        public static final String ALERT_COUNT = "ALERT_COUNT";

        /**
         * 预警信息  预警地区
         * ---- 值类型为String
         */
        public static final String ALERT_LOCATION = "ALERT_LOCATION";

        /**
         * 预警信息  预警信息
         * ---- 值类型为String
         */
        public static final String ALERT_DESC = "ALERT_DESC";

        /**
         * 预警信息  预警范围
         * ---- 值类型为List<Double>
         */
        public static final String ALERT_BOUND_COORD = "ALERT_BOUND_COORD";
    }

}
